#ifndef INIT_REAL_CPU_CU
#define INIT_REAL_CPU_CU

#include "../fitness/fitnessReal.cu"

void inicializarPoblacionRealCPUManual(float* poblacion, float* fitnessActual, MersenneTwister *mt, int cantCromosomasPoblacion, float* fitnessOrdenadoHostCPU){
	//Obtengo posicion a escribir.
	int posicionCromosoma = 0;
	int posicionFitness = 0;
	for(int i = 0; i < cantGenesEnCromosoma * cantidadPoblacionesCPU * cantCromosomasPoblacion; i++){
		//Genero valor aleatorio.
		float r = (mt->genrand_real1())/1000;
		poblacion[posicionCromosoma+i] = r;
	}

	for(int i = 0; i < cantidadPoblacionesCPU * cantCromosomasPoblacion; i++){
		fitnessActual[posicionFitness] = calcularFitnessRealCPU(poblacion, posicionCromosoma);
		fitnessOrdenadoHostCPU[posicionFitness] = fitnessActual[posicionFitness];
		posicionFitness++;
		posicionCromosoma = posicionCromosoma + cantGenesEnCromosoma;
	}
}

#endif
